package com.joolun.common.config.oss;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

import java.io.Serializable;

/**
 * 云存储配置信息
 */
@Configuration
@ConfigurationProperties(prefix = "oss")
@Data
public class CloudStorageConfig implements Serializable {
    private static final long serialVersionUID = 1L;

    //类型 1：七牛  2：阿里云  3：腾讯云
    private Integer type;

//    //七牛绑定的域名
//    private String qiniuDomain;
//    //七牛路径前缀
//    private String qiniuPrefix;
//    //七牛ACCESS_KEY
//    private String qiniuAccessKey;
//    //七牛SECRET_KEY
//    private String qiniuSecretKey;
//    //七牛存储空间名
//    private String qiniuBucketName;

    //阿里云绑定的域名
    private String aliyunDomain;
    //阿里云路径前缀
    private String aliyunPrefix;
    //阿里云EndPoint
    private String aliyunEndPoint;
    //阿里云AccessKeyId
    private String aliyunAccessKeyId;
    //阿里云AccessKeySecret
    private String aliyunAccessKeySecret;
    //阿里云BucketName
    private String aliyunBucketName;
    // 回调地址
	private String aliyunCallbackUrl;
	// RAM权限文件
	private String stsPolicy;

	private String stsRoleArn;
	private String stsAccessKeyId;
	private String stsAccessKeySecret;



	//腾讯云绑定的域名
//    private String qcloudDomain;
//    //腾讯云路径前缀
//    private String qcloudPrefix;
//    //腾讯云AppId
//    private Integer qcloudAppId;
//    //腾讯云SecretId
//    private String qcloudSecretId;
//    //腾讯云SecretKey
//    private String qcloudSecretKey;
//    //腾讯云BucketName
//    private String qcloudBucketName;
//    //腾讯云COS所属地区
//    private String qcloudRegion;

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

	public String getAliyunDomain() {
		return aliyunDomain;
	}

	public void setAliyunDomain(String aliyunDomain) {
		this.aliyunDomain = aliyunDomain;
	}

	public String getAliyunPrefix() {
		return aliyunPrefix;
	}

	public void setAliyunPrefix(String aliyunPrefix) {
		this.aliyunPrefix = aliyunPrefix;
	}

	public String getAliyunEndPoint() {
		return aliyunEndPoint;
	}

	public void setAliyunEndPoint(String aliyunEndPoint) {
		this.aliyunEndPoint = aliyunEndPoint;
	}

	public String getAliyunAccessKeyId() {
		return aliyunAccessKeyId;
	}

	public void setAliyunAccessKeyId(String aliyunAccessKeyId) {
		this.aliyunAccessKeyId = aliyunAccessKeyId;
	}

	public String getAliyunAccessKeySecret() {
		return aliyunAccessKeySecret;
	}

	public void setAliyunAccessKeySecret(String aliyunAccessKeySecret) {
		this.aliyunAccessKeySecret = aliyunAccessKeySecret;
	}

	public String getAliyunBucketName() {
		return aliyunBucketName;
	}

	public void setAliyunBucketName(String aliyunBucketName) {
		this.aliyunBucketName = aliyunBucketName;
	}

	public String getAliyunCallbackUrl() {
		return aliyunCallbackUrl;
	}

	public void setAliyunCallbackUrl(String aliyunCallbackUrl) {
		this.aliyunCallbackUrl = aliyunCallbackUrl;
	}

	public String getStsPolicy() {
		return stsPolicy;
	}

	public void setStsPolicy(String stsPolicy) {
		this.stsPolicy = stsPolicy;
	}

	public String getStsAccessKeyId() {
		return stsAccessKeyId;
	}

	public void setStsAccessKeyId(String stsAccessKeyId) {
		this.stsAccessKeyId = stsAccessKeyId;
	}

	public String getStsAccessKeySecret() {
		return stsAccessKeySecret;
	}

	public void setStsAccessKeySecret(String stsAccessKeySecret) {
		this.stsAccessKeySecret = stsAccessKeySecret;
	}

	public String getStsRoleArn() {
		return stsRoleArn;
	}

	public void setStsRoleArn(String stsRoleArn) {
		this.stsRoleArn = stsRoleArn;
	}
}
